home *** CD-ROM | disk | FTP | other *** search
/ Columbia Kermit / kermit.zip / newsgroups / misc.20020314-20021006 / 000047_ishikawa@yk.rim.or.jp_Fri Apr 26 14:31:18 EDT 2002.msg < prev    next >
Text File  |  2020-01-01  |  11KB  |  288 lines

  1. Article: 13338 of comp.protocols.kermit.misc
  2. Path: newsmaster.cc.columbia.edu!phl-feed.news.verio.net!iad-feed.news.verio.net!iad-peer.news.verio.net!news.verio.net!news.maxwell.syr.edu!newsfeed.media.kyoto-u.ac.jp!newsfeed.rim.or.jp!news.rim.or.jp!not-for-mail
  3. From: Ishikawa <ishikawa@yk.rim.or.jp>
  4. Newsgroups: comp.protocols.kermit.misc
  5. Subject: Re: a bug on GNU/linux: speed reset to unintended value occasionally.
  6. Date: Sat, 27 Apr 2002 02:34:56 +0900
  7. Organization: Ye 'Ol Disorganized NNTPCache groupie
  8. Lines: 264
  9. Message-ID: <3CC98FC0.AADA5130@yk.rim.or.jp>
  10. References: <3CAFF81C.8039CBF8@yk.rim.or.jp> <3CC6E9D7.F4F2C624@yk.rim.or.jp> <aa6sjh$1a9$1@watsol.cc.columbia.edu> <3CC84CA6.D49F85EC@yk.rim.or.jp> <aa9l3h$4s4$1@watsol.cc.columbia.edu>
  11. NNTP-Posting-Host: pl1612.nas911.n-yokohama.nttpc.ne.jp
  12. Mime-Version: 1.0
  13. Content-Type: text/plain; charset=iso-2022-jp
  14. Content-Transfer-Encoding: 7bit
  15. X-Trace: news.rim.or.jp 1019842500 38098 210.139.45.76 (26 Apr 2002 17:35:00 GMT)
  16. X-Complaints-To: root@rim.or.jp
  17. NNTP-Posting-Date: Fri, 26 Apr 2002 17:35:00 +0000 (UTC)
  18. X-Mailer: Mozilla 4.77 [en] (X11; U; Linux 2.4.18 i686)
  19. X-Accept-Language: ja, en
  20. Cache-Post-Path: duron!unknown@localhost
  21. X-Cache: nntpcache 2.3.3 (see http://www.nntpcache.org/)
  22. Xref: newsmaster.cc.columbia.edu comp.protocols.kermit.misc:13338
  23.  
  24. Frank da Cruz wrote:
  25.  
  26. > : In any case, the inclusion of these capability into
  27. > : KERMIT must have been deemed necessary upon popular demands,
  28. > : and I hope you had a nice feedback from the users of KERMIT.
  29. > :
  30. > It comes from a conference we attended in Tokyo in 1987.  We worked
  31. > with people from NTT, DEC Japan, and KEK on this and it was widely
  32. > used in Japan for some years.  
  33.  
  34. I remember Fujii-san from KEK helped 
  35. the popularization of Kermit on Japanese PC.
  36. Me, however, was probably in minority in that I was
  37. attracted to Kermit because it had
  38. a nice emulation of DG DASHER terminal.
  39. The real mess caused by competing character code 
  40. standards are now handled by exisitng systems 
  41. in more or less satisfactory manner.
  42. Many existing systems now come with their own
  43. code conversion facilities. This is the only way
  44. the systems would be viable in Japanese market.
  45.  
  46.  
  47. >   http://www.columbia.edu/kermit/papers.html
  48.  
  49. I found some papers there very interesting.
  50. Especially the one comparing UUCP and Kermit.
  51. (I supported UUCP at the office using stock Sun UUCP,
  52. then TaylerUUCP for some years until we switched
  53. over to IP-connection in 1994 or 1995.)
  54.  
  55. > Yes, this is the fate of all popular software.  In fact, for a
  56. > while, the icon for the Windows version of EMACS *was* a kitchen
  57. > sink ;-)
  58.  
  59. Wow. This is probably a oft-asked question, but
  60. I wonder why noone seems to have bothered to obtain
  61. permission to use Kermit the frog for, say,
  62. X-window icon for kermit? (If windows version of
  63. Kermit uses such icon, I stand corrected. I don't use
  64. kermit under windows, or for that matter Windoze unless
  65. I am forced to...)
  66.  
  67. > I confess, it can be fun.  It's like a laboratory in which we
  68. > experiment with protocols and algorithms, and at the same time
  69. > produce something useful that helps people in real life, and
  70. > grows with them and with the times so those who like it don't
  71. > have to leave it behind.
  72.  
  73. I hope you will find supporting Kermit fun.
  74.  
  75. Anyway, below is the result of
  76. a little experiment I did to clear up
  77. my understanding of some options, etc..
  78.  
  79. Hope some people might find this useful.
  80.  
  81. I got curious and 
  82. I measured the CPS rate reported on the screen
  83. into  20% of the transfer of the binary file "wermit".
  84.  
  85. Four cases were considered.
  86.  
  87. The default case, case-1, is set as follows.
  88. Other three sets add some control tweaks.
  89. Case-2 was just to check that /binary and /transparnet was
  90. a synonym.
  91.  
  92. The setting.
  93. case-1: default setting + modification using a startup file
  94.         set modem type none
  95.         set line /dev/ttyS0             (on the receiving side ttyS1)
  96.         set speed 38400
  97.         set carrier-watch off 
  98.         set flow rts
  99.  
  100.         Transfer was done as
  101.         send /binary ./wermit ./wermit.tmp
  102.  
  103. case-2: `case-1' setting
  104.         + /transparent in send command as in 
  105.         Transfer was done as
  106.         send /binary /transparent ./wermit ./wermit.tmp
  107.  
  108. case-3: `case-1` setting
  109.         + "set control unprefixed all"
  110.         Transfer was done as
  111.         send /binary ./wermit  ./wermit.tmp
  112.  
  113. case-4: `case-1` setting 
  114.         +  "set prefixing none"
  115.         (BTW, Completion doesn't show "none" as a valid third argument.)
  116.                  
  117.         Transfer was done as
  118.          send /binary ./wermit ./wermit.tmp
  119.  
  120.  
  121. I measured CPS during a binary file transfer of
  122. "wermit" itself with
  123. profiled version of wermit (Compiled with gcc -pg ...original flags
  124. ...)
  125. This is on linux, kernel 2.4.18. ("make linux" was used to re-create
  126. the wermit binary after "-pg" was added to linuxa target.)
  127.  
  128. TABLE-1
  129.  
  130. CPS (measured into 20% of the transfer. The file is 2183313 bytes.)
  131. ============================================================================
  132. CPS:      case-1  case-2   case-3  case-4
  133. ---------------------------------------------------------------------------
  134. send:    3010     3009     3835    3621
  135. receive: 2973     2972     3786    3568
  136. ===========================================================================
  137.  
  138. >From  TABLE-1, 
  139. Case-3 is the fastest on my PC.
  140.  
  141. As pointed out by Frank,
  142. >from  the measurement, it is obvious that
  143. "/binary" only and  "/binary" plus "/transparent" is equivalent for
  144. binary file transfer by comparing case-1 and case-2.
  145.  
  146. My observation of subtle difference between
  147. the CPS in case-3 and case-4 still seems to be valid.
  148. (The numbers are more or less repeatable.)
  149. I had no idea why. So I ran the profiled version of
  150. wermit and below I append the top-10 functions found
  151. in profiled data during the run.
  152. Someone might be able to figure out if there
  153. IS a reason for the subtle difference.
  154.  
  155. Again, thank you for the great software.
  156.  
  157. Appendix.
  158.  
  159. The profile data is as follows.
  160.  
  161. I show the top 10 functions on the receiving and
  162. sending side. I am not entirely sure if gprof
  163. is useful in this particular analysis, but
  164. if someone is interested, I can send the
  165. full output including the part that starts with
  166. "Call graph (explanation follows)". 
  167.  
  168. Case-3:
  169. Here are the top-10 functions in case 3 (fastest):
  170.  
  171. Sending side:
  172. Each sample counts as 0.01 seconds.
  173.   %   cumulative   self              self     total           
  174.  time   seconds   seconds    calls  ms/call  ms/call  name    
  175.  50.00      0.04     0.04      147     0.27     0.27  bgetpkt
  176.  25.00      0.06     0.02      150     0.13     0.17  spack
  177.  12.50      0.07     0.01      281     0.04     0.04  chk3
  178.  12.50      0.08     0.01      133     0.08     0.11  rpack
  179.   0.00      0.08     0.00      650     0.00     0.00  makestr
  180.   0.00      0.08     0.00      567     0.00     0.00  in_chk
  181.   0.00      0.08     0.00      411     0.00     0.00  ckstrcmp
  182.   0.00      0.08     0.00      321     0.00     0.00  conbgt
  183.   0.00      0.08     0.00      302     0.00     0.00  ckscreen
  184.   0.00      0.08     0.00      302     0.00     0.00  screenc
  185.  
  186. Receiving side.
  187.  
  188. Receiving side.
  189. Each sample counts as 0.01 seconds.
  190.   %   cumulative   self              self     total           
  191.  time   seconds   seconds    calls  ms/call  ms/call  name    
  192.  50.00      0.01     0.01      151     0.07     0.07  ttinl
  193.  50.00      0.02     0.01       16     0.62     0.62  docmd
  194.   0.00      0.02     0.00    13030     0.00     0.00  myfillbuf
  195.   0.00      0.02     0.00    13030     0.00     0.00  mygetbuf
  196.   0.00      0.02     0.00      653     0.00     0.00  makestr
  197.   0.00      0.02     0.00      475     0.00     0.00  ckstrcmp
  198.   0.00      0.02     0.00      327     0.00     0.00  conbgt
  199.   0.00      0.02     0.00      320     0.00     0.00  ckstrncpy
  200.   0.00      0.02     0.00      307     0.00     0.00  ckscreen
  201.   0.00      0.02     0.00      307     0.00     0.00  in_chk
  202.  
  203.  
  204.  
  205. Case-4:
  206. Here are the top-10 functions in case 4 (slightly lower):
  207. Sending side
  208. (The presence of gtword could be attributed some
  209. retyping of commands to the prompt. But I am not sure.)
  210.  
  211. Each sample counts as 0.01 seconds.
  212.   %   cumulative   self              self     total           
  213.  time   seconds   seconds    calls  ms/call  ms/call  name    
  214.  63.64      0.07     0.07      150     0.47     0.47  bgetpkt
  215.  18.18      0.09     0.02       49     0.41     0.41  gtword
  216.   9.09      0.10     0.01      287     0.03     0.03  chk3
  217.   9.09      0.11     0.01      136     0.07     0.11  rpack
  218.   0.00      0.11     0.00      652     0.00     0.00  makestr
  219.   0.00      0.11     0.00      575     0.00     0.00  in_chk
  220.   0.00      0.11     0.00      494     0.00     0.00  ckstrcmp
  221.   0.00      0.11     0.00      316     0.00     0.00  conbgt
  222.   0.00      0.11     0.00      296     0.00     0.00  ckscreen
  223.   0.00      0.11     0.00      296     0.00     0.00  screenc
  224.  
  225.  
  226. Receiving side:
  227. (I think something is wrong in the 100.00 % count
  228. in the first column...)
  229.  
  230. Each sample counts as 0.01 seconds.
  231.   %   cumulative   self              self     total           
  232.  time   seconds   seconds    calls  ms/call  ms/call  name    
  233. 100.00      0.01     0.01    13317     0.00     0.00  myfillbuf
  234.   0.00      0.01     0.00    13317     0.00     0.00  mygetbuf
  235.   0.00      0.01     0.00      645     0.00     0.00  makestr
  236.   0.00      0.01     0.00      331     0.00     0.00  conbgt
  237.   0.00      0.01     0.00      323     0.00     0.00  ckstrcmp
  238.   0.00      0.01     0.00      313     0.00     0.00  ckscreen
  239.   0.00      0.01     0.00      313     0.00     0.00  in_chk
  240.   0.00      0.01     0.00      313     0.00     0.00  screenc
  241.  
  242.  
  243.  
  244.  
  245.  
  246. cf. 
  247. CASE-1: base line setting.
  248.         38400, 8N1 rts/cts, 
  249.         no prefix tweaking.
  250.         no control tweaking.
  251.         send /binary 
  252.  
  253. Output of 
  254. show comm, and 
  255. show control. 
  256.  
  257. Communications Parameters:
  258.  Line: /dev/ttyS0, speed: 38400, mode: local, modem: none
  259.  Parity: none, stop-bits: (default) (8N1)
  260.  Duplex: full, flow: rts/cts, handshake: none
  261.  Carrier-watch: off, close-on-disconnect: off
  262.  Lockfile: /var/lock/LCK..0
  263.  Terminal bytesize: 8, escape character: 28 (^\)
  264. Type SHOW MODEM to see modem-related items.
  265.  
  266. (/home/ishikawa/KERMIT/new-kermit/send/) C-Kermit>show control
  267.  
  268. control quote = 35, applied to (0 = unprefixed, 1 = prefixed):
  269.  
  270.     0: 1    16: 1           128: 0   144: 1 
  271.     1: 1    17: 1           129: 1   145: 1 
  272.     2: 0    18: 0           130: 0   146: 0 
  273.     3: 1    19: 1           131: 1   147: 1 
  274.     4: 1    20: 0           132: 1   148: 0 
  275.     5: 0    21: 1           133: 0   149: 1 
  276.     6: 0    22: 0           134: 0   150: 0 
  277.     7: 0    23: 0           135: 0   151: 0 
  278.     8: 0    24: 1           136: 0   152: 0 
  279.     9: 0    25: 1           137: 0   153: 0 
  280.    10: 1    26: 1           138: 1   154: 1 
  281.    11: 0    27: 0           139: 0   155: 0 
  282.    12: 0    28: 1           140: 0   156: 1 
  283.    13: 1    29: 1           141: 1   157: 1 
  284.    14: 1    30: 1           142: 0   158: 1 
  285.    15: 1    31: 0   127: 0  143: 0   159: 0   255: 1
  286.  
  287. (/home/ishikawa/KERMIT/new-kermit/send/) C-Kermit>
  288.